package com.ruoyi.inspection.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.ruoyi.system.domain.FileManage;
import lombok.Data;

import java.io.Serializable;
import java.util.Date;
import java.util.List;

/**
 * 专项检查隐患信息表(GovernHiddenInventory)实体类
 *
 * @author makejava
 * @since 2024-07-30 12:13:13
 */
@Data
public class GovernHiddenInventory implements Serializable {
    private static final long serialVersionUID = -58859672568290912L;
//    @JsonSerialize(using= ToStringSerializer.class)
    private Integer hiddenInventoryId;

    /**
     * 计划ID
     */
    @JsonSerialize(using= ToStringSerializer.class)
    private Long governTaskPlanId;

    @JsonSerialize(using= ToStringSerializer.class)
    private Long governTaskInfoId;

    /**
     * 下发专项检查任务项细则ID
     */
    private String governCheckTaskItemScoreId;
    /**
     * 下发专项检查任务项ID
     */
    private String governCheckTaskItemId;
    /**
     * 下发专项任务ID
     */
    private String governCheckTaskId;

    //隐患名称
    private String hiddenInventoryName;
    /**
     * 隐患排查类型

     */
    private String hiddenCheckType;
    /**
     * 隐患来源
     */
    private String hiddenSource;
    /**
     * 隐患排查人
     */
    private String hiddenCheckUser;
    /**
     * 隐患排查时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date hiddenCheckTime;
    /**
     * 部门名称
     */
    private String deptName;
    /**
     * 部门ID
     */
    private Integer deptId;
    /**
     * 隐患分类
     */
    private String hiddenType;
    /**
     * 隐患类别
     * 默认： 0 其他隐患
     */
    private String hiddenBelongType;
    /**
     * 隐患级别

     */
    private String hiddenLevel;
    /**
     * 隐患录入依据
     */
    private String hiddenEntryBasis;
    /**
     * 排查级别
     */
    private String checkLevel;
    /**
     * 隐患描述
     */
    private String hiddenInfo;
    /**
     * 建议整改措施
     */
    private String hiddenRectificationMeasures;
    /**
     * 整改责任人
     */
    private String rectificationUserName;
    /**
     * 整改责任人ID
     */
    private Integer rectificationUserId;
    /**
     * 复核人
     */
    private String reviewUserName;
    /**
     * 复核人ID
     */
    private Integer reviewUserId;
    /**
     * 隐患治理期限
     */
    private String rectificationEndTime;
    /**
     * 登记人
     */
    private String registerUserName;
    /**
     * 登记人ID
     */
    private Integer registerUserId;
    /**
     * 隐患登记后通过或驳回 0-未操作 1-通过 2-驳回
     */
    private Integer hiddenState;
    /**
     * 驳回或通过说明
     */
    private String hiddenStateInfo;
    /**
     * 整改照片路径
     */
    private String completeHiddenFileUrl;
    /**
     * 整改照片名称
     */
    private String completeHiddenFileName;
    /**
     * 整改照片ID
     */
    private Integer completeHiddenFileId;
    /**
     * 隐患照片路径
     */
    private String hiddenFileUrl;
    /**
     * 隐患照片名称
     */
    private String hiddenFileName;
    /**
     * 隐患照片ID
     */
    private Integer hiddenFileId;
    /**
     * 治理资金
     */
    private String hiddenManagingFunds;
    /**
     * 罚款金额
     */
    private String hiddenCheckPay;
    /**
     * 整改完成情况
     */
    private String hiddenCompleteInfo;
    /**
     * 整改完成时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date hiddenCompleteTime;
    /**
     * 复核情况
     */
    private String hiddenReviewInfo;
    /**
     * 复核时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date hiddenReviewTime;
    /**
     * 隐患进度（待修改、待确认、待复核、完成、待整改、已驳回、已超时）
     */
    private String hiddenProgress;
    /**
     * 删除标志（0未删除）
     */
    private Integer governDeleted;
    /**
     * 创建人
     */
    private String governCreateBy;
    /**
     * 创建时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date governCreateDate;
    /**
     * 修改人
     */
    private String governUpdateBy;
    /**
     * 修改时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date governUpdateDate;
    /**
     * 否决项 (0未确认 1是 2否)
     */
    private Integer governConfirm;
    /**
     * 是否上传（0未上传）
     */
    private Integer governUpload;

    /**
     * 隐患出处（默认：专项检查）
     */
    private String hiddenFrom;
    /**
     * 危害类型（1-事故隐患; 2-火灾隐患）
     */
    private String harmType;
    /**
     * 隐患治理类型
     * 0 即查即改
     * 1 限期整改
     */
    private String dangerManageType;
    /**
     * 所属装置
     */
    private String deviceName;
    private Integer deviceId;

    private String dangerCode;
    private String governId;
    private String governId2;

    private List<FileManage> fileManageList;

//    /**
//     *  当前登录用户名称
//     */
//    private String userName;
//
//    /**
//     *  当前登录用户ID
//     */
//    private Integer userId;

}

